#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>

typedef struct Node *PtrToNode;
struct Node {
    double Data;
    PtrToNode Next;
};
typedef PtrToNode List;
typedef PtrToNode Position;

List CreateList()
{
    List L = (Position)malloc(sizeof(struct Node));
    L->Next = NULL;
    L->Data = 100;

    return L;
}


List Insert(List L, double X)
{
    Position tmp;

    tmp = (Position)malloc(sizeof(struct Node));
    tmp->Data = X;
    tmp->Next = L->Next;
    L->Next = tmp;

    return L;
}

int main()
{
    List example_list = CreateList();
    example_list = Insert(example_list, 1.2);
    example_list = Insert(example_list, 2.2);

    for (Position i = example_list; i != NULL; i = i->Next)
        printf("%lf ", i->Data);

    return 0;
}